package com.zhu.designpatterns.creational.builder;

/**
 * @author ZhuXinYe
 * @date 2022/8/29 22:31
 * @description 抽象建造者：描述具体建造者的公共接口，一般用来定义建造细节的方法，并不涉及具体的对象部件的创建。
 **/
public abstract class Builder {
    /**
     * 造引擎
     */
    abstract void buildEngine();

    /**
     * 造车门
     */
    abstract void buildDoor();

    /**
     * 造车窗
     */
    abstract void buildWindow();

    /**
     * 造车轮
     */
    abstract void buildWheel();

    /**
     * 完工
     *
     * @return Car
     */
    abstract Car getCar();
}
